package di

import (
	"fmt"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/base/user"
	mp2 "git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/base/user/mp"
	user2 "git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/base/user/user_service"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/business_opportunity/bid"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/business_opportunity/common"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/business_opportunity/contact"
	customer2 "git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/business_opportunity/customer"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/business_opportunity/project"
	subscription2 "git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/business_opportunity/subscription"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/business_opportunity/supplier"
	sl2 "git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/clue/clue"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/clue/report"
	commonService "git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/common"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/common/file"
	"git.mycaigou.com/gfyx/micro-gfyx-mp-api/service/common/message"
)

func (c *Inject) InjectService() {
	services := []interface{}{
		bid.NewBidService,
		common.NewCommonService,
		commonService.NewOptionService,
		commonService.NewMiniProgramService,
		contact.NewContactService,
		customer2.NewCustomerService,
		file.NewFileService,
		message.NewVerifyCodeService,
		mp2.NewMpUserService,
		project.NewSearchProject,
		report.NewReportService,
		sl2.NewClueService,
		subscription2.NewSubscriptionService,
		supplier.NewSupplier,
		user.NewUserNewService,
		user2.NewUserService,
		project.NewProjectService,
		project.NewBuildingService,
		project.NewLandService,
	}
	var errs []error
	for _, service := range services {
		err := c.Provide(service)
		if err != nil {
			errs = append(errs, err)
		}
	}
	fmt.Printf("InjectSerivce #%+v\n", errs)
}
